//package com.punch.system.controller;
//
//
//import com.punch.common.dto.system.area.AreaDTO;
//import com.punch.common.model.Result;
//import com.punch.common.vo.system.area.TreeAreaVO;
//import com.punch.system.service.AreaService;
//import io.swagger.annotations.Api;
//import io.swagger.annotations.ApiOperation;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.web.bind.annotation.*;
//
//import javax.validation.Valid;
//import java.util.List;
//
///**
// * AreaController-地区表 前端控制器
// *
// * @author wujj
// * @version 1.0.0
// * @since 2020/6/3 19:06
// */
//@RestController
//@RequestMapping("/sys")
//@Api(value = "SysAreaController", tags = "地区管理Controller")
//public class AreaController {
//
//    @Autowired
//    private AreaService areaService;
//
//
//    /**
//     * 地区树形
//     *
//     * @param parentId 地区父id,默认为0
//     * @return List<TreeAreaVO>
//     * @author wujj
//     * @since 2020/6/4 19:16
//     */
//    @GetMapping(value = "/area/{parentId}", produces = "application/json; charset=utf-8")
//    @ApiOperation(value = "地区树形", notes = "地区树形", produces = "application/json")
//    public Result<List<TreeAreaVO>> treeArea(@PathVariable Long parentId) {
//        return Result.succeed(areaService.treeArea(parentId));
//    }
//
//    /**
//     * 地区树形（根据状态查询）
//     *
//     * @param status   状态 0-停用 1-启用
//     * @param parentId 父节点id
//     * @return List<TreeAreaVO>
//     * @author wujj
//     * @since 2020/6/4 19:16
//     */
//    @GetMapping(value = "/area/{status}/{parentId}", produces = "application/json; charset=utf-8")
//    @ApiOperation(value = "地区树形", notes = "地区树形", produces = "application/json")
//    public Result<List<TreeAreaVO>> treeAreaStatus(@PathVariable Integer status, @PathVariable Long parentId, @RequestParam("type") Integer type) {
//        return Result.succeed(areaService.treeAreaStatus(status, parentId,type));
//    }
//
//    /**
//     * 新增地区
//     *
//     * @param areaDTO 地区新增表单
//     * @return areaId
//     * @author wujj
//     * @since 2020/6/4 19:33
//     */
//
//
//    @PostMapping(value = "/area", produces = "application/json; charset=utf-8")
//    @ApiOperation(value = "新增地区", notes = "新增地区", produces = "application/json; charset=utf-8")
//    public Result<Long> saveArea(@Valid @RequestBody AreaDTO areaDTO) {
//        return Result.succeed(areaService.saveArea(areaDTO));
//    }
//
//
//    /**
//     * 修改地区
//     *
//     * @param areaDTO 地区更新表单
//     * @return areaId
//     * @author wujj
//     * @since 2020/6/4 19:46
//     */
//
//    @PutMapping(value = "/area", produces = "application/json; charset=utf-8")
//    @ApiOperation(value = "修改地区", notes = "修改地区", produces = "application/json; charset=utf-8")
//    public Result<Long> updateArea(@Valid @RequestBody AreaDTO areaDTO) {
//        return Result.succeed(areaService.updateArea(areaDTO));
//    }
//
//
//    /**
//     * 删除地区
//     *
//     * @param areaId 地区id
//     * @return areaId
//     * @author wujj
//     * @since 2020/6/4 19:54
//     */
//
//    @DeleteMapping(value = "/area/{areaId}", produces = "application/json; charset=utf-8")
//    @ApiOperation(value = "删除地区", notes = "删除地区", produces = "application/json; charset=utf-8")
//    public Result<Long> deleteArea(@PathVariable Long areaId) {
//        return Result.succeed(areaService.deleteArea(areaId));
//    }
//
//    /**
//     * 地区信息
//     *
//     * @param areaId 地区id
//     * @return TreeAreaVO
//     * @author wujj
//     * @since 2020/6/4 19:16
//     */
//    @GetMapping(value = "/area/feign/{areaId}", produces = "application/json; charset=utf-8")
//    @ApiOperation(value = "地区信息", notes = "地区信息", produces = "application/json")
//    public TreeAreaVO getFeignArea(@PathVariable Long areaId) {
//        return areaService.getFeignArea(areaId);
//    }
//
//
//    /**
//     * 查找该地区id下的子id
//     *
//     * @param parentId 地区父id
//     * @return List<Long>
//     * @author wujj
//     * @since 2020/6/4 19:16
//     */
//    @GetMapping(value = "/area/feign/child/{parentId}", produces = "application/json; charset=utf-8")
//    @ApiOperation(value = "查找该地区id下的子id", notes = "查找该地区id下的子id", produces = "application/json")
//    public List<Long> listFeignChildId(@PathVariable Long parentId) {
//        return areaService.listFeignChildId(parentId);
//    }
//
//
//    /**
//     * 地区启用/停用
//     */
//    @PutMapping("/area/enable/{areaId}")
//    @ApiOperation(value = "地区启用/停用")
//    public Result enableArea(@PathVariable Long areaId) {
//        areaService.enableArea(areaId);
//        return Result.succeed("修改成功");
//    }
//}
